package com.maidada.mddaichat.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.maidada.mddaichat.common.BaseRequest;
import com.maidada.mddaichat.dto.user.*;
import com.maidada.mddaichat.entity.User;
import com.maidada.mddaichat.vo.user.UserDetailVO;
import com.maidada.mddaichat.vo.user.UserPageVO;
import com.maidada.mddaichat.vo.user.UserVO;

import javax.validation.Valid;

/**
 * [用户表]服务接口
 *
 * @author wulinxuan
 * @date 2025-04-16 16:15
 */
public interface UserService extends IService<User> {

    String register(@Valid UserRegisterRequest param);

    String login(@Valid UserLoginRequest param);

    UserVO currentUser();

    void add(UserAddRequest param);

    void delete(BaseRequest param);

    void update(UserUpdateRequest param);

    UserDetailVO queryDetail(BaseRequest param);

    IPage<UserPageVO> queryPage(UserPageRequest param);
}
